package com.typhoon.spring_shiro.service.shiro;

import org.apache.shiro.web.servlet.Cookie;
import org.apache.shiro.web.servlet.SimpleCookie;

/**
 * 自定义cookie实现,该类存在的目的是为了防止不同环境多套子域名之间发生SESSIONID冲突，导致没法登录的问题。
 * 
 */
public class SharedSessionIdCookie extends SimpleCookie {

    public SharedSessionIdCookie() {
        super();
    }

    public SharedSessionIdCookie(String name) {
        super(name);
    }

    public SharedSessionIdCookie(Cookie cookie) {
        super(cookie);
    }

    /*
     * 这里重写SESSIONID 的Cookie name 获取方法，用各自的域名配置 作为SESSIONID name的前缀
     * 
     * 
     * @see org.apache.shiro.web.servlet.SimpleCookie#getName()
     * 
     * @see spring shiro 配置文件 ，sharesession
     */
    public String getName() {
        return super.getDomain().toUpperCase() + "_" + super.getName();
    }
}
